home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / plain / contrib / samples / docautomacro.tex < prev    next >
Encoding:
Text File  |  1989-11-22  |  10.0 KB  |  331 lines

  1. % Questo file (in Tex) contiene la documentazione sull'uso dei 
  2. % comandi contenuti nel file AUTOMACRO.tex, utile per la numerazione
  3. % automatica delle eqs, della bibliografia etc.
  4.  
  5. \magnification=1200
  6. \tolerance=1000
  7. %\hsize=15 truecm
  8. %\vsize=23 truecm
  9. %\baselineskip 20 truept
  10. %\voffset=-2 truecm
  11.  
  12. \font\deca=cmr10 scaled\magstep1
  13. \font\rex=cmr10 scaled\magstep2
  14. \font\ita=cmti10 scaled\magstep1
  15. \font\itax=cmti10 scaled\magstep2
  16. \font\sla=cmsl10 scaled\magstep1
  17. \font\slax=cmsl10 scaled\magstep2
  18. \font\boldo=cmbx10 scaled\magstep1
  19. \font\boldx=cmbx10 scaled\magstep2
  20.  
  21. \def\st#1{\underbar {#1}}
  22. \def\bk{$\backslash$}
  23. \def\ri{\item{$\star$\ }}
  24. \def\pgl{$\{$}
  25. \def\pgr{$\}$}
  26. \def\dsty{\displaystyle}
  27.  
  28. \def\uncatcodespecials{\def\do##1{\catcode`##1=12 }\dospecials}
  29.  
  30. \def\sic{\begingroup\tt\uncatcodespecials
  31.   \obeyspaces\doverbatim}
  32. \newcount\balance
  33. {\catcode`<=1 \catcode`>=2 \catcode`\{=12 \catcode`\}=12
  34.   \long\gdef\doverbatim{<\balance=1\verbatimloop>      
  35.   \long\gdef\verbatimloop#1<\def\next<#1\verbatimloop>%
  36.     \if#1{\advance\balance by1
  37.     \else\if#1}\advance\balance by-1
  38.      \ifnum\balance=0\let\next=\endgroup\fi\fi\fi\next>>
  39.  
  40. % E' la macro "\verbatim" del TeXbook, pag. 381, qui chiamata \sic.
  41. % I due "\long" li ho aggiunti io.
  42.  
  43. \centerline {\sla Numerazione automatica di equazioni, etc.\/}
  44. \vskip 20 truept
  45.  
  46.      Il file automacro.tex contiene le
  47. macroistruzioni necessarie per la numerazione automatica di equazioni,
  48. citazioni, etc.
  49.  
  50.      L'idea \`e che man mano che si scrivono, ad esempio, equazioni
  51. numerate, \TeX{} le numera progressivamente in modo automatico,
  52. facendo avanzare un suo ``contatore di equazioni". L'utente invece
  53. assegna all'equazione un ``nome'' a piacere (una qualsiasi stringa di
  54. caratteri) che resta associato al numero, e che si pu\`o usare in
  55. seguito per far riferimento a quell'equazione. In questo modo
  56. l'eventuale inserimento di una nuova equazione rinumera
  57. automaticamente  le equazioni seguenti ed anche i corrispondenti
  58. riferimenti.
  59.  
  60. \vskip 20 truept
  61. \noindent 1. \st{Numerazione semplice delle equazioni}
  62.  
  63. \vskip 7truept
  64.     \sic{\eqlabel}\pgl\sic{xxx}\pgr \quad aumenta di uno il contatore
  65. delle equazioni;  associa al numero nuovo il nome xxx, che \`e una
  66. sequenza qualsiasi di lettere, numeri od altri simboli.  \par
  67. \vskip  7 truept
  68.      \sic{\eqref}\pgl\sic{xxx}\pgr\quad richiama il numero associato
  69. a xxx tramite \sic{\eqlabel}\pgl\sic{xxx}\pgr. \par
  70. \vskip  7 truept\noindent
  71. Esempio: dopo aver gi\`a usato 15 volte \sic{\eqlabel}, si scrive:\par
  72. \vskip 3truept
  73. \sic{$$}
  74.  
  75. \sic{\eqlabel}\pgl\sic{15 bis}\pgr
  76.  
  77. \sic{\sin(\pi-\alpha) = \sin\alpha\eqno(\eqref}\pgl\sic{15 bis}\pgr
  78.                         \sic{)}
  79.  
  80. \sic{$$}
  81. \vskip  7 truept
  82. \sic{$$}
  83.  
  84. \sic{\eqlabel}\pgl\sic{16}\pgr
  85.  
  86. \sic{x =
  87. \sqrt}\pgl\sic{y+1}\pgr\sic{\eqno(\eqref}\pgl\sic{16}\pgr\sic{)}
  88.  
  89. \sic{$$}
  90.  
  91. \noindent \sic{come si} {\tt \`e} \sic{visto nelle (\eqref}\pgl\sic{15
  92. bis}\pgr)\sic{e (\eqref}\pgl\sic{16}\pgr\sic{)....}  \par
  93. \vskip  7 truept
  94.      Il risultato \`e:
  95. $$
  96. \sin(\pi - \alpha) = \sin \alpha  \eqno(16)
  97. $$
  98. $$
  99. x = \sqrt{y + 1} \eqno(17)
  100. $$
  101. come si \`e visto nelle (16) e (17)....      \par
  102. \vskip  7 truept
  103.      \sic{\autoeqno}\pgl\sic{xxx}\pgr \quad sta per 
  104. \sic{\eqlabel{xxx}\eqno(\eqref{xxx})}; le
  105. formule sopra riportate si possono di conseguenza scrivere in modo pi\`u
  106. semplice, con identico risultato:
  107.  
  108. \sic{$$}
  109.  
  110. \sic{\sin(\pi-\alpha) = \sin\alpha\autoeqno}\pgl\sic{15 bis}\pgr
  111.  
  112. \sic{$$}
  113. \vskip  7 truept
  114. \sic{$$}
  115.  
  116. \sic{x = \sqrt}\pgl\sic{y + 1}\pgr \sic{\autoeqno}\pgl\sic{16}\pgr
  117.  
  118. \sic{$$}
  119. \vskip 7 truept\noindent
  120.      L'uso separato di \sic{\eqlabel} e \sic{\eqno} resta
  121. indispensabile per ottenere, ad esempio:
  122. $$
  123. \eqalignno{
  124. \sin (\pi - \alpha) &= \sin \alpha &(16 a) \cr
  125. \cos (\pi - \alpha) &= - \cos \alpha &(16b) \cr}
  126. $$
  127. che si scrive:
  128. \vskip 3truept
  129. \sic{$$}
  130.  
  131. \sic{\eqlabel}\pgl\sic{15 bis}\pgr
  132.  
  133. \sic{\eqalignno}\pgl
  134.  
  135. \sic{\sin(\pi - \alpha) & = \sin\alpha &(\eqref}\pgl\sic{15 bis}\pgr
  136.        \sic{a) \cr}
  137.  
  138. \sic{\cos(\pi - \alpha) & = -\cos\alpha &(\eqref}\pgl\sic{15 bis}
  139.       \pgr\sic{b) \cr}\pgr
  140.  
  141. \sic{$$}
  142. \vskip  7 truept\noindent
  143. Esiste anche:
  144.  
  145. \sic{\autoleqno}\pgl\sic{xxx}\pgr \quad  analoga a
  146. \sic{\autoeqno}\pgl\sic{xxx}\pgr, con numerazione a sinistra.
  147. \vskip 20 truept
  148. \noindent 2. \st{Numerazione delle sezioni}
  149. \vskip 7truept
  150.  
  151. \sic{\autosection}\pgl\sic{yyy}\pgr \quad (titolo della sezione,
  152. chiuso da una riga bianca o \sic{\par}). Fa diverse cose:  inserisce
  153. uno spazio opportuno prima e dopo il titolo;
  154. aumenta di uno il ``contatore delle sezioni", ed associa al
  155. numero nuovo il nome yyy, per i successivi riferimenti;  scrive il
  156. titolo della sezione in grassetto, preceduto dal numero progressivo
  157. della sezione; impedisce un eventuale cambio pagina subito dopo il
  158. titolo.
  159. \vskip  7 truept
  160. \sic{\sref}\pgl\sic{yyy}\pgr \quad richiama il numero associato a
  161. yyy, in maniera simile a \sic{\eqref}.
  162. \vskip 7truept\noindent 
  163. Esiste anche: \par
  164. \sic{\section}\quad (titolo, chiuso da \sic{\par} o riga bianca), che
  165. non produce alcuna numerazione automatica delle sezioni, ma genera le
  166. stesse spaziature di \sic{\autosection}, e come questa mette il titolo
  167. in grassetto ed impedisce un eventuale cambio pagina tra il titolo ed
  168. il testo successivo. \par
  169. \vskip 20 truept
  170. \noindent 3. \st{Numerazione doppia delle equazioni}, abbinata alla
  171. numerazione delle sezioni. \par
  172. \vskip 7truept
  173.    Il comando \sic{\numerazionedoppia} predispone la numerazione
  174. doppia delle equazioni, nella forma: ``sezione.equazione''. Funziona
  175. cos\`\i: i successivi comandi \sic{\autosection}, in aggiunta a quanto
  176. gi\`a detto, azzerano il contatore delle equazioni, mentre un
  177. successivo comando \sic{\eqlabel{xxx}} associa al nome
  178. xxx il doppio numero ``sezione.equazione'' (\sic{\autoeqno} e
  179. \sic{\autoleqno} si modificano di conseguenza).
  180. Perci\`o, se la sezione corrente \`e la numero tre, ed entro questa
  181. sezione sono gi\`a state numerate 10 equazioni, \sic{\eqlabel{xxx}} 
  182. associa a xxx il numero 3.11.
  183. \vskip  7 truept
  184. Esempio:  dopo aver inserito il comando \sic{\numerazionedoppia}, ed
  185. aver  gi\`a completato due sezioni, si scrive:
  186. \vskip 3truept
  187.  
  188. \sic{\autosection}\pgl\sic{pa}\pgr\sic{Pitagora e Affini \par} \par
  189. \sic{In questa sezione \sref}\pgl\sic{pa}\pgr\ \sic{si parla di:}\par
  190. \sic{$$}
  191.  
  192. \sic{c^2 = a^2 +b^2 \autoeqno}\pgl\sic{pitagora}\pgr
  193.  
  194. \sic{$$}
  195.  
  196. \sic{ed inoltre di}
  197.  
  198. \sic{$$}
  199.  
  200. \sic{c^2 = a^2 + b^2 - 2ab \cos\alpha \autoeqno}\pgl\sic{affini}\pgr
  201.  
  202. \sic{$$}
  203.  
  204. \sic{La (\eqref{pitagora}) \`e un caso particolare della (\eqref{affini}).}
  205.  
  206. \vskip 7 truept\noindent
  207. Il risultato \`e:
  208. \vskip 7truept
  209. \noindent {\bf 3. \quad Pitagora e affini}\par\noindent
  210. In questa sezione 3 si parla di
  211. $$
  212. c^2 = a^2 + b^2 \eqno (3.1)
  213. $$
  214. e di
  215. $$
  216. c^2 = a^2 + b^2 - 2ab \cos\,\alpha \eqno (3.2)
  217. $$
  218. La (3.1) \`e un caso particolare della (3.2).
  219. \vskip  7 truept
  220. E' anche possibile numerare automaticamente le equazioni come si usa
  221. di solito nelle appendici, cio\`e, ad esempio, (A.1), (A.2), ....
  222. (B.1) .... usando al posto di \sic{\autosection} il comando
  223.  
  224. \sic{\semiautosection}\pgl\sic{yyy}\pgr\quad (titolo, chiuso da
  225. \sic{\par} o linea bianca).  Funziona come \sic{\autosection}, per\`o
  226. non avanza il contatore delle sezioni, e nella numerazione automatica
  227. delle equazioni usa direttamente il simbolo yyy al posto del numero
  228. della sezione.
  229. \vskip  7 truept\noindent
  230. Esempio: se si scrive
  231. \vskip 3truept
  232.  
  233. \sic{\semiautosection}\pgl\sic{\rm A}\pgr \sic{Appendice \par}
  234.  
  235. \sic{$$}
  236.  
  237. \sic{\int_0^}\pgl\sic{2\pi}\pgr\sic{\cos x dx = 33 \autoeqno}\pgl
  238.        \sic{??}\pgr
  239.  
  240. \sic{$$}
  241.  
  242. \sic{$$}
  243.  
  244. \sic{\int_0^}\pgl\sic{2\pi}\pgr \sic{\cos x dx = 0 \autoeqno}\pgl
  245.         \sic{!!}\pgr
  246.  
  247. \sic{$$}
  248.  
  249. \sic{l'integrale (\eqref{??}) \`e sbagliato,
  250.  
  251. mentre (\eqref{!!}) \`e giusto...}
  252. \vskip 7 truept\noindent
  253. Il risultato \`e:
  254. \vskip 3truept
  255. \noindent {\bf Appendice} \par
  256. $$
  257. \int^{2\pi}_0 \cos x\  dx = 33
  258. \eqno ({\rm A}.1)
  259. $$
  260.  
  261. $$
  262. \int^{2\pi}_0 \cos x \  dx = 0
  263. \eqno ({\rm A}.2)
  264. $$
  265. l'integrale (A.1) \`e sbagliato, mentre (A.2) \`e giusto...
  266. \vskip 20 truept
  267. \noindent 4. \st{Numerazione delle citazioni}
  268. \vskip 7truept
  269.    \sic{\clabel}\pgl\sic{xxx}\pgr \quad \`e analoga a \sic{\eqlabel}:
  270. aumenta di uno il ``contatore delle citazioni", ed associa al numero
  271. progressivo il nome xxx.  \par
  272.     \sic{\cref{xxx}} \quad richiama il numero associato a xxx
  273. tramite \sic{\clabel}. \par
  274.      \sic{\cite{xxx}} \quad sta per
  275. \sic{$^}\pgl\sic{[\cref}\pgl \sic{xxx}\pgr\sic{]}\pgr\sic{$}, cio\`e
  276. produce citazioni come$^{[23]}$ questa.  \par
  277.     \sic{\firstcite}\pgl\sic{xxx}\pgr \quad sta per
  278. \sic{\clabel}\pgl\sic{xxx}\pgr \sic{\cite}\pgl\sic{xxx}\pgr.
  279. \vskip 20 truept
  280. \noindent 5. \st{Altri comandi} (tabella con la corrispondenza nomi--numeri; 
  281. riferimenti al futuro)
  282. \vskip 7truept
  283.  
  284. E' utile, per successive correzioni, avere una tabella con scritta in
  285. chiaro la corrispondenza tra nomi e numeri. Si usa per questo il
  286. comando \sic{\simboli}, a seguito del quale \TeX{} genera un file di
  287. nome: (nome del lavoro).SMB, con le corrispondenze richieste.
  288.  
  289. E' poi frequente il caso di riferimenti ``al futuro" (tipicamente con
  290. le appendici), cio\`e a nomi di equazioni o citazioni cui \TeX{}
  291. solo in seguito associer\`a  automaticamente un numero. E' possibile
  292. mantenere l'automatismo dei riferimenti, mettendo, all'inizio, il
  293. comando \sic{\riferimentifuturi}.
  294.  
  295. Funziona cos\`\i: eseguendo una prima volta \TeX, viene prodotto un
  296. file ausiliario, di nome: (nome del lavoro).AUX che contiene tutte le
  297. macroistruzioni che stabiliscono la corrispondenza tra nomi e numeri.
  298. Eseguendo una seconda volta \TeX{}, queste macroistruzioni sono
  299. automaticamente richiamate, e tutto funziona correttamente. La
  300. presenza di riferimenti indefiniti o definiti male \`e segnalata.
  301.  
  302. \vskip 20 truept
  303.  
  304. \noindent 6. \st{Avvertenze}
  305. \vskip 7truept
  306.  
  307. Le macroistruzioni per la numerazione automatica usano i seguenti
  308. comandi, che sono riservati e non possono essere usati dall'utente:
  309. \vskip 3truept
  310.  
  311. \sic{
  312.  
  313. \lasezionecorrente
  314.  
  315. \ilnumero
  316.  
  317. \lacitazione
  318.  
  319. \spoglia
  320.  
  321. \usagetta
  322. }
  323.  
  324. \vskip 3truept\noindent
  325. Sono inoltre riservati tre contatori, di nome \sic{\eqnum},
  326. \sic{\sectnum} e \sic{\citnum}, due files esterni, di nome
  327. \sic{\filesimboli} e \sic{\fileausiliario}, e tre nuovi if, di nome
  328. \sic{\ifsimboli}, \sic{\ifriferimenti} e \sic{\ifdoppia}.
  329.  
  330. \bye
  331.